1. Field of the Invention
This invention relates generally to a magnetic random access memory (MRAM) and more particularly to a method and apparatus for programming of MRAMs.
2. Description of the Prior Art
Magnetic random access memories (MRAMs) include magnetoresistive tunnel junctions (MTJs), effectively the memory element of the MTJ storing binary data. Each MTJ typically has two magnetic layers, separated by a thin barrier layer, generally made of magnesium oxide (MgO), which acts as a tunneling oxide layer of the MTJ. The magnetic orientation in these layers, upon the application of suitable electric current determines the state of the MTJ.
One of the magnetic layers of the MTJ typically has a fixed orientation while the other magnetic layer, typically referred to as a “free layer”, can change its orientation during programming of the MTJ. If the two magnetic layers have the same magnetic orientation (parallel state), the resistance of the MTJ is rather low while when they have the opposite magnetic orientation relative to one another (anti-parallel state), the resistance of the MTJ is rather high.
Changing the binary or magnetic orientation (or “state”) of a MTJ is referred to as “programming” (or “writing to”) the MTJ. Programming is performed by forcing electric current through the MTJ. Electrons passing through the fixed layer of the MTJ and into the free layer of the MTJ force the orientation of the free layer to become the same as that of the fixed layer. Whereas, forcing the electrons to travel from the free layer into the fixed layer, causes the orientation of the fixed layer to remain unchanged, but the bounced electrons from the fixed layer change the orientation of the free layer to be opposite to that of the fixed layer. The amount of current required to change the orientation of the MTJ can be calculated using the following equation:I=I0*A*[1−((K*T)/(K0*V))Ln(t/t0)]  Eq. (1)wherein ‘*’ denotes a multiplication operation and ‘I0’ is the current density per unit area, which is a variable dependent on the MTJ fabrication technology. ‘A’, in Eq. (1), is the MTJ area, ‘K’ is the Boltzmann constant, ‘T’ is temperature in degrees Kelvin. ‘K0’ is the resultant magnetic field, ‘V’ is the volume of the free layer, ‘t’ is time in nano seconds (nSec), and t0 is 1 nSec. The value K0*V/K*T is called delta (Δ), and it is a measure of the stability of the MTJ relative to temperature (or ‘T’). Based on the foregoing, the programming time can be calculated as follows:t=t0 exp[Δ*(1−I/I0*A)]  Eq. (2)Eq. (2) clearly indicates that programming time is exponentially related to the MTJ current, which means in order to reduce programming time, a desired outcome, programming current, needs to be augmented. Programming current, also referred to herein as “electrical current” is typically provided by a select (or “access”) transistor that is coupled to the MTJ and selects the MTJ for programming or reading.
The size of the transistor can be arbitrarily made large to boost programming current but enlarging the access transistor has the undesirable effect of increasing the MRAM cell size, the MRAM cell generally includes an MTJ and an access transistor. The size of the MRAM cell is typically dictated by the size of its access transistor. Accordingly, minimizing the size of the MRAM cell typically requires minimizing the size of the access transistor, which results in a fairly small amount of current for programming and/or reading the MTJ. There is therefore a conflict between smaller MTJ cell size versus higher programming current.
In FIGS. 1a and 1b each show a typical MRAM cell 1 to include an access transistor 3, coupled to a MTJ 2. In FIG. 1a, the prior art MTJ 2, which functions like a variable resistor, is accessed by the transistor 3 through which it is programmed from an anti-parallel (AP) state to a parallel (P) state, or from a high MTJ resistance (R) to a low MTJ R. “Anti-parallel” (“AP”) refers to the orientation of magnetic layers of the MTJ 2 being opposite to one another whereas, “parallel” (“P”) refers to the orientation of the magnetic layers of the MTJ 2 being the same relative to each other, as shown in FIG. 1b. 
FIG. 1b shows the prior art MTJ 2 programmed from a “P” state to an “AP” state using the transistor 3. In the latter case, current is exceptionally low, by as much as 40-60 percent. This is largely due to having higher voltage at the source of the transistor 3. The voltage required to program the MTJ 2, in this case, when the MTJ 2 is being programmed from P to AP, has the effect of raising the voltage at the source of the driving (or “access”) transistor. Accordingly, the electrical current through the transistor 3 drops due to the reduction of the voltage from gate-to-source of the transistor 3, as well as due to the increase in the Vt of the transistor, which is the threshold voltage of the transistor 3. Vt increases because the voltage at the source of the transistor 3 acts as a substrate bias for the n-channel transistor. In this case, enlarging the size of the transistor 3 does not increase the electrical current of the transistor 3 by much. Thus, the gate voltage of the transistor 3 needs to be increased to compensate for all these. To increase the gate one needs to consider at least two limitations. One is that in most designs the power supply provided is limited for example to only 1 to 1.2 volts. The second limitation is that the transistor has certain tolerance limit to voltage. More than certain levels of voltage could damage the transistor. For example if the transistor is designed for 1.2 volts, voltages in excess of 1.44 V (20% excess voltage) could damage the transistor.
Accordingly, there is a need for a MTJ cell with small cell size yet higher electric current for reliably programming the MTJ.